divide and conquer general method